package tool

import (
	"exam_jxk/pkg/models"
	"github.com/pkg/errors"
	"gorm.io/driver/mysql"
	"gorm.io/gorm"
)

func NewDataBase(url string, debug bool) (*gorm.DB, error) {
	db, err := gorm.Open(mysql.Open(url), &gorm.Config{}) //打开mysql这个系统表
	if err != nil {
		return nil, errors.Wrap(err, "gorm open database connection error")
	}
	if debug { // 数据库开启debug
		db = db.Debug()
	}

	// 建表，可以一次性建多个表
	err = db.AutoMigrate(&models.Student{}, &models.Question{})
	if err != nil {
		return nil, err
	}
	return db, nil
}
